<?php

interface IController {

    /**
     * This method is implemented in AbstractController.
     * It is calling the other 3 methods.
     * If you want to subscribe, don't forget it.
     * init($objRequest);
     * specificExecute($objRequest);
     * end($objRequest);
     * @param $_GET, $_POST or $_REQUEST $objRequest
     */
    function execute($objRequest);

    /**
     * Put here the process.
     * @param $_GET, $_POST or $_REQUEST $objRequest
     */
    function specificExecute($objRequest);
    
    /**
     * Popula os atributos da classe para a execucao do fluxo da operacao.
     * @author Tiago <tiago.professor@gmail.com>
     * @param type $objRequest
     */
    function populandoAtributos($objRequest);
    
    /**
     * Verifica se o model populado com as infomacoes da tela esta valido
     * @author Tiago <tiago.professor@gmail.com>
     */
    function isModelValido();
}

?>
